The present invention relates to the preservation of a user interface state for an application. Prior application software programs have preserved at least some aspects of their user interface by explicitly saving data about the user interface. Typically, a user specifies preferences and these are saved when the user quits the application or when the preferences are specified. These aspects of the user interface are saved by the application in response to the user's selection of a command in the application or in response to quitting of the application.
Another example of the preservation of user interface is a resume or state restoration feature of the operating system known as Mac OSX version 10.7 (also known as “Lion”). The Cocoa application framework in this version of the Macintosh operating system provides support for an application that decides to save aspects of its user interface. Much of the user interface data of the application is already maintained in Cocoa's application framework, and Cocoa can then cause this user interface data to be saved, when for example, the operating system terminates an application that has been moved to a background state. When the application is relaunched after this termination, then Cocoa and the application can restore the state of the user interface of the application, and this can include the size and position of windows and objects within the windows and scroll positions of content within the windows. The Cocoa application framework provides this preservation for only a single device, such as a user's laptop, that runs the application and the Cocoa application framework.
The prior art also includes systems which synchronize user content between a set of devices controlled by a single user; however, these prior synchronization systems do not synchronize user interface states between applications on different devices of the user.